In a modern computer system, whether it is a conventional system with physically separate and distinct system components or the more physically integrated system on chip (SOC), multiple protocols can be used to conduct communications between the various components of a single system and other devices external to the system including other systems. The Advanced Technology Attachments (ATA) or Integrated Drive Electronics (IDE as it is sometimes referred to) is one such popular communications protocol that was originally developed to support communication between a host processor of a system and associated storage devices, such as hard disk drives (HD) and CD-ROM drives, for instance. The ATA protocol has now evolved to include a serial communications protocol (referred to as a Serial ATA), as well as the original parallel ATA communications protocol. Other such communication protocols include SCSI, USB, ADB, RS-232, RS-485, HPPI, IEEE-488, PCMCIA and SSA to name just a few. The PCMCIA protocol is popularly used with memory devices commonly referred to as a PC card or a version specially suited for laptop computers that is sometimes referred to as an Express card.
Despite the numerous communication protocols already in place, new protocols continue to proliferate the field. Therefore, a modern computer system should be flexible enough to accommodate the capability to communicate in a number of different communication protocols. However, the addition of the capability to communicate in each new protocol can bring in additional complexities and require additional system resources to implement a system design. Such additional complexities may interfere with other goals of a system design such as reducing the pin count in an SOC or a discrete system. Thus, there is a need to provide a flexible and extensible system design to which capability to conduct communications in a plurality of communication protocols can be added without significantly increasing the associated resource costs (e.g., increased pin count or increased foot print area of an SOC).